# Tests using downloaded fonts use HTTP(..) because they use fonts in
# ../fonts/.  We can't use file:/// URLs because of cross-directory access
# restrictions on file: URLs.

HTTP(..) != download-1.html download-1-notref.html
HTTP(..) == download-2.html download-2-ref.html
HTTP(..) != download-2.html about:blank
random-if(winWidget||gtkWidget) HTTP(..) == download-2-big.html download-2-big-otf.html # bug 470713
HTTP(..) != download-2-big-otf.html about:blank
HTTP(..) != download-3-notref.html download-3.html # bug 1019192
HTTP(..) == download-3-ref.html download-3.html # same bugs as above
HTTP(..) == fallback-to-system-1.html fallback-to-system-1-ref.html # just delayed assertions from above tests
HTTP(..) == name-override-simple-1.html name-override-simple-1-ref.html
HTTP(..) != name-override-simple-1.html download-1-notref.html
fails HTTP(..) == name-override-1.html name-override-1-ref.html
HTTP(..) == multiple-descriptor-1.html multiple-descriptor-1-ref.html
HTTP(..) != multiple-descriptor-1.html multiple-descriptor-1-notref.html
HTTP(..) == src-list-1.html src-list-1-ref.html
HTTP(..) == src-list-2.html src-list-2-ref.html
random-if(winWidget||gtkWidget) HTTP(..) == src-list-2-big-otf.html src-list-2-big-ref.html # bug 470713
HTTP(..) == src-list-format-1.html src-list-format-1-ref.html
HTTP(..) == src-list-format-2.html src-list-format-2-ref.html
HTTP(..) == src-list-format-3.html src-list-format-3-ref.html
HTTP(..) == src-list-format-4.html src-list-format-1-ref.html
HTTP(..) == src-list-format-5.html src-list-format-2-ref.html
HTTP(..) == src-list-format-6.html src-list-format-3-ref.html
# assumes AAT fonts are only supported on MacOS
random-if(cocoaWidget) HTTP(..) == src-list-format-7.html src-list-format-2-ref.html
random-if(!cocoaWidget) HTTP(..) == src-list-format-7.html src-list-format-3-ref.html
== src-list-local-full.html src-list-local-full-ref.html
== src-list-local-full-quotes.html src-list-local-full-ref.html
HTTP(..) == src-list-local-fallback.html src-list-local-fallback-ref.html

# data url tests (these don't need the HTTP server)
== src-list-data-1.html src-list-data-ref.html
== src-list-data-2.html src-list-data-ref.html
== src-list-data-3.html src-list-data-ref.html
== src-list-data-4.html src-list-data-ref.html

# load with data url vs. font data load
HTTP(..) == src-list-actual-font-ref.html src-list-data-1.html

# localized full fontnames should *not* match, only English ones (need locale-invariant key)
skip HTTP(..) == src-list-local-localized.html src-list-local-localized-ref.html # 486787, 486497

# postscript name lookup
# fontconfig only supports postscript name lookup from 2.10.92
random-if(gtkWidget) == src-list-local-ps.html src-list-local-full-ref.html
# Mac-specific test of 100 weight faces
random-if(!cocoaWidget) == helveticaneue-ultra.html helveticaneue-ultra-ref.html

HTTP(..) == order-1.html order-1-ref.html
HTTP(..) == order-2.html order-2-ref.html
HTTP(..) == order-3.html order-3-ref.html
HTTP(..) == multiple-in-family-1.html multiple-in-family-1-ref.html
HTTP(..) == multiple-in-family-1b.html multiple-in-family-1-ref.html
HTTP(..) != multiple-in-family-1.html multiple-in-family-1-notref.html
HTTP(..) == prop-order-over-rule-order-1a.html prop-order-over-rule-order-2a.html
HTTP(..) == prop-order-over-rule-order-1b.html prop-order-over-rule-order-2b.html
HTTP(..) != prop-order-over-rule-order-1a.html prop-order-over-rule-order-1b.html
HTTP(..) == cross-iframe-1.html cross-iframe-1-ref.html

# unicode-range
HTTP(..) == unicoderange-1.html unicoderange-1-ref.html
HTTP(..) == unicoderange-2.html unicoderange-2-ref.html
HTTP(..) == unicoderange-3.html unicoderange-3-ref.html
HTTP(..) == unicoderange-4.html unicoderange-4-ref.html

# Dynamic changes
# we need to skip these because of the bug that's causing order-2.html to fail
HTTP(..) == enable-sheet-1.html enable-sheet-1-ref.html
skip HTTP(..) == enable-sheet-2.html multiple-in-family-1-ref.html
skip HTTP(..) == enable-sheet-3.html multiple-in-family-1-ref.html
HTTP(..) == enable-sheet-4.html enable-sheet-4-ref.html
HTTP(..) == enable-sheet-5.html enable-sheet-4-ref.html
skip HTTP(..) == enable-sheet-6.html multiple-in-family-1-ref.html
skip HTTP(..) == enable-sheet-7.html multiple-in-family-1-ref.html
HTTP(..) == disable-sheet-1.html disable-sheet-1-ref.html
# We're missing disable-sheet-{2,3,6,7} (analogs to
# enable-sheet{2,3,6,7}) because I don't know how to detect test
# completion for those cases.
HTTP(..) == disable-sheet-4.html disable-sheet-4-ref.html
HTTP(..) == disable-sheet-5.html disable-sheet-4-ref.html
HTTP(..) == sheet-set-base-1.html sheet-set-base-1-ref.html
random-if(cocoaWidget) HTTP(..) == sheet-set-switch-1.html sheet-set-switch-1-ref.html # bug 468217
HTTP(..) == insert-rule-1a.html insert-rule-1-ref.html
HTTP(..) == insert-rule-1b.html insert-rule-1-ref.html
HTTP(..) == delete-rule-1.html delete-rule-1-ref.html
HTTP(..) == media-query-add-1.html media-query-add-1-ref.html
HTTP(..) == media-query-remove-1.html media-query-remove-1-ref.html
HTTP(..) != media-query-add-1-ref.html media-query-remove-1-ref.html

HTTP(..) == ahem-metrics-1.html ahem-metrics-1-ref.html
HTTP(..) == ex-unit-1.html ex-unit-1-ref.html
HTTP(..) == ex-unit-1-dynamic.html ex-unit-1-ref.html

== local-1.html local-1-ref.html
== local-styled-1.html local-styled-1-ref.html

HTTP(..) == synthetic-weight-style.html synthetic-weight-style-ref.html
HTTP(..) == synthetic-variations.html synthetic-variations-ref.html

# Leak test
HTTP(..) load 486974-1.html

# compare fonts with and without bad head checksum
HTTP(..) == load-badchecksum.html load-badchecksum-ref.html

# @font-face names take precedence over names of platform fonts (bug 494360)
HTTP(..) == name-collision.html name-collision-ref.html
HTTP(..) == name-collision-bad-url.html name-collision-bad-url-ref.html

HTTP(..) == name-collision-with-prefs-font.html name-collision-with-prefs-font-ref.html # bug 668758
HTTP(..) == load-badfullname.html load-badfullname-ref.html

# 507960-1-* : a collection of tests using DeLarge from openfontlibrary.org
# check that the original DeLarge face (ttf) loads; if this fails,
# none of the following tests are meaningful
HTTP(..) != 507960-1-nofont.html 507960-1-ref.html
# check that the WOFF version loads, with and without a format hint
HTTP(..) == 507960-1-woff.html 507960-1-ref.html
HTTP(..) == 507960-1-woff-hint.html 507960-1-ref.html
# try damaged fonts that should still load (bad checksums)
HTTP(..) == 507960-1-bad-checksums-ttf.html 507960-1-ref.html
HTTP(..) == 507960-1-bad-checksums-woff.html 507960-1-ref.html
# try versions that should NOT load (bad offsets, signatures, hint)
HTTP(..) != 507960-1-bad-sfnt-version-ttf.html 507960-1-ref.html
HTTP(..) != 507960-1-bad-sfnt-version-woff.html 507960-1-ref.html
HTTP(..) != 507960-1-bad-woff-sig.html 507960-1-ref.html
HTTP(..) != 507960-1-bad-offset-woff.html 507960-1-ref.html
HTTP(..) != 507960-1-woff-bad-hint.html 507960-1-ref.html

# Tests for bug 523717
HTTP(..) == underline-offset-change-1.html underline-offset-change-1-ref.html
HTTP(..) == underline-offset-change-2.html underline-offset-change-2-ref.html
fails-if(cocoaWidget) fails-if(winWidget) HTTP(..) != underline-offset-change-1-ref.html underline-offset-change-2-ref.html # Bug 534132

HTTP(..) != 534352-1-extra-cmap-sentinel.html 534352-1-extra-cmap-sentinel-ref.html
HTTP(..) == bug533251.html bug533251-ref.html

# Bug 875287
HTTP(..) == font-familiy-whitespace-1.html font-familiy-whitespace-1-ref.html
HTTP(..) != font-familiy-whitespace-1.html font-familiy-whitespace-1-notref.html

HTTP(..) == ivs-1.html ivs-1-ref.html
HTTP(..) == cjkcisvs-1.html cjkcisvs-1-ref.html

HTTP(..) == missing-names.html missing-names-ref.html

# Tests for bug 670900 - handling of 404 (not found) error in @font-face URL
# (using Chunkfive font data returned from a .sjs file)
HTTP(..) == font-error-404-1.html font-error-404-1-ref.html # HTTP status 404, don't load
HTTP(..) == font-error-404-2.html font-error-404-2-ref.html # HTTP status 200, load
HTTP(..) != font-error-404-1.html font-error-404-2.html # sanity-check that the results differ

# Font load redirection
HTTP(..) == font-redirect.html order-1-ref.html

# Tests for potential regressions from bug 879963
== dynamic-duplicate-rule-1a.html dynamic-duplicate-rule-1-ref.html
== dynamic-duplicate-rule-1b.html dynamic-duplicate-rule-1-ref.html
== dynamic-duplicate-rule-1c.html dynamic-duplicate-rule-1-ref.html

# Test for COLR and CPAL support
HTTP(..) == color-1a.html color-1-ref.html
HTTP(..) != color-1a.html color-1-notref.html
HTTP(..) == color-1b.html color-1-ref.html
HTTP(..) == color-2a.html color-2-ref.html
HTTP(..) != color-2a.html color-2-notref.html

pref(gfx.downloadable_fonts.woff2.enabled,true) HTTP(..) == woff2-1.html woff2-1-ref.html
pref(gfx.downloadable_fonts.woff2.enabled,true) HTTP(..) == woff2-totalsfntsize.html woff2-totalsfntsize-ref.html

# sanity tests for reflow behavior with downloadable fonts
HTTP(..) == reflow-sanity-1.html reflow-sanity-1-ref.html
HTTP(..) == reflow-sanity-1-data.html reflow-sanity-1-ref.html
HTTP(..) == reflow-sanity-1.html reflow-sanity-1-data.html
HTTP(..) == reflow-sanity-delay-1a.html reflow-sanity-1-ref.html
HTTP(..) == reflow-sanity-delay-1b.html reflow-sanity-1-ref.html
HTTP(..) == reflow-sanity-delay-1c.html reflow-sanity-1-ref.html
HTTP(..) == reflow-sanity-delay-1-metrics.html reflow-sanity-1-ref.html

# font-display
pref(layout.css.font-display.enabled,true) HTTP(..) == font-display-1.html font-display-1-ref.html # normal font load (~500ms)
pref(layout.css.font-display.enabled,true) fuzzy-if(OSX==1010,3,5) HTTP(..) == font-display-2.html font-display-2-ref.html # font load takes 4500ms

